1. Field of the Invention
The present invention relates to personal computer systems, and, more particularly, to personal computer system memories and methods of accessing personal computer system memories.
2. Description of the Related Art
Computer systems are information handling systems which can be designed to give independent computing power to one user or a plurality of users. Computer systems may be found in many forms including, for example, mainframes, minicomputers, workstations, servers, personal computers, internet terminals, notebooks and embedded systems. Personal computer (PC) systems, such as the International Business Machines (IBM) compatible PC systems, include desk top, floor standing, or portable versions. A typical PC system is a microcomputer that includes a microprocessor, associated memory and control logic (typically on a system board) and a number of peripheral devices that provide input and/or output (I/O) for the system. PC system boards often receive expansion PCBs to increase the capabilities of the computer system and to connect to peripheral devices through an expansion bus. For example, various multimedia devices are commonly implemented as add-in cards in desktop and portable computers or as integrated circuits for installation on a system board.
Computer systems typically include a set of built-in software routines called the basic input/output system (BIOS). The BIOS is a software interface between the system hardware and the operating system software. The BIOS facilitates programmer and user interaction with the system hardware. Because the BIOS has qualities of software and hardware, it is often referred to as firmware. Like software, the BIOS is a set of instructions to the computer's microprocessor. Like hardware, the BIOS is commonly coded onto a non-volatile memory such as a ROM (Read Only Memory) or a PROM (Programmable ROM) such as an EPROM (Erasable PROM), an EEPROM (Electrically Erasable PROM), a flash RAM (Random Access Memory) or any other type of memory appropriate for storing BIOS.
The BIOS controls several important functions of personal computer systems. For instance, the BIOS performs various functions at power up, including testing low memory, scanning for other BIOSs (e.g., peripheral BIOSs), yielding to other BIOSs when necessary, inventorying the system, and testing the system. The BIOS also controls keystroke interpretation, display of characters, and communication via the PC ports. The operating system and application programs of a computer system access the BIOS rather than directly manipulating I/O ports, registers and control words of the specific system hardware. BIOS is accessed through an interface of software interrupts and contains a plurality of entry points respectively corresponding to the different interrupts.
The BIOS memory (e.g., a PROM chip) typically has a significantly longer access time than standard DRAM (Dynamic RAM) or SRAM (Static RAM) used for PC main memories. DRAM chips with access times of about 70 ns and SRAM chips with access times below 25 ns are common. But EPROMs and other PROM types often need up to 200 ns before the addressed data is available. This is important because extensive BIOS routines for access to floppy and hard disk drives or the graphics adapters are often located in the slower PROM. Moreover, these routines are frequently called by the operating system or application programs, and thus slow down program execution.
To resolve this problem, the BIOS is commonly copied, or shadowed, from the slower BIOS memory into the faster RAM of main memory so that the main memory is now accessed instead of the BIOS memory. In some systems, BIOS shadowing is required because the BIOS is stored in a compressed format that must be decompressed for use. Accordingly, modem personal computer system designs utilize the BIOS memory only for limited functions, if at all, following the normal boot of the machine. Once the BIOS has been shadowed, the usage of the BIOS memory becomes infrequent.